//-----------------------------------------------------------------
// Includes
//-----------------------------------------------------------------
#include <Viewer/Cube.hpp>
#include <GL/glut.h>

namespace Viewer
{
	///////////////////////////////////////////////////////////////////
	/// Constructeur
	///////////////////////////////////////////////////////////////////
	Cube::Cube( float x, float y, float z, float r, float g, float b, float size): 
	Node(x,y,z,r,g,b),cubeSize(size)
	{
	}
	
	///////////////////////////////////////////////////////////////////
	/// Destructeur
	///////////////////////////////////////////////////////////////////	
	Cube::~Cube()
	{
		
	}
	
	Cube::Cube( const Cube & copy ):
	Node( copy ),cubeSize(copy.cubeSize)
	{

	}

	Cube & Cube::operator=( const Cube & copy )
	{	
		//centre = copy.centre;
		cubeSize = copy.cubeSize;
		return *this;
	}

	void Cube::Draw()
	{			
		material.Draw();	
		glutSolidCube(cubeSize);
	}

	Node * Cube::CreateCopy()
	{
		return new Cube( *this );
	}

}
